This application relates to a messaging application (e.g., e-mail, instant messaging, chat rooms, etc.) user interface.
The computer system 100 illustrated in FIG. 1 represents a typical hardware setup for executing software that allows a user to perform tasks such as communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic contentxe2x80x94that is, any combination of text, images, movies, music or other sounds, animations, 3D virtual worlds, and links to other objects. The system includes various input/output (I/O) devices (mouse 103, keyboard 105, display 107) and a general purpose computer 100 having a central processor unit (CPU) 121, an I/O unit 117 and a memory 109 that stores data and various programs such as an operating system 111, and one or more application programs 113. The computer system 100 also typically includes some sort of communications card or device 123 (e.g., a modem or network adapter) for exchanging data with a network 127 via a communications link 125 (e.g., a telephone line).
As shown in FIG. 2, a user of a computer system can access electronic content or other resources either stored locally at the user""s own client system 202 (for example, a personal or laptop computer) or remotely at one or more server systems 200. An example of a server system is a host computer that provides subscribers with online computer services such as e-mail, e-commerce, instant messaging, chat rooms, Internet access, online games, electronic newspapers and magazines, etc. Users of a host computer""s online services typically communicate with one or more central server systems 200 through client software executing on their respective client systems 202.
In practice, a server system 200 typically will not be a single monolithic entity but rather will be a network of interconnected server computers, possibly physically dispersed from each other, each dedicated to its own set of duties and/or to a particular geographical region. In such a case, the individual servers are interconnected by a network of communication links, in a known fashion. One such server system is xe2x80x9cAmerica Online 4.0xe2x80x9d from America Online, Incorporated of Virginia.
One increasingly popular computer network-based activity is referred to as xe2x80x9cinstant messaging.xe2x80x9d An instant message is a form of electronic communication between users of a computer network in which a window pops-up on the recipient""s computer screen xe2x80x9cinstantlyxe2x80x9d and without the recipient having to access an e-mail program or otherwise check for messages. An instant message appears essentially as soon as the message sender clicks the send button subject to any time or propagation delays the message may have encountered on the network. In comparison to most e-mail applications, instant messaging enables users to communicate with each other in a more dynamic, urgent and interactive manner.
FIG. 3 is a screen shot of an Instant Message (IM) window 130 as used in AOL""s Instant Messenger (xe2x80x9cAIMxe2x80x9d) system. As shown therein, the window 130 includes a text display area 131 and text entry area 132. Both users involved in the IM under consideration (i.e., sender and recipient) would have a similar window displayed on his or her computer monitor. When one user (PhillipsJC) types a comment 134 in text entry area 132 and clicks the Send button 133 (or, depending on the configuration, presses the xe2x80x9cENTERxe2x80x9d key on the keyboard), the entered text (e.g., xe2x80x9cHey, did you see the game last night?xe2x80x9d) is displayed in the text display area 131 of the window 130 such that it is visible to both users. After FRsnafu enters a comment 135 in response and clicks the Send button 133, that comment 135 appears in the text display area 131 underneath the previous comment 134. This exchange of comments continues indefinitely until the users decide to terminate the exchange.
Typically, instant messages can be sent to another user only when that user is presently signed on to the computer service. Users who are signed off are unavailable to receive instant messages. Accordingly, another popular innovation introduced by America Online is the xe2x80x9cBuddy List,xe2x80x9d which allows users to monitor when other specified users (xe2x80x9cbuddiesxe2x80x9d) are signed onto and/or off of the computer service under consideration (e.g., AOL Instant Messenger).
As shown in FIG. 4, the Buddy List is implemented as a window 140 that lists specified users, or buddies, who are signed on to the AIM system. In the example shown, the Buddy List for user xe2x80x9cPhillipsJCxe2x80x9d indicates that four of PhillipsJC""s buddies 141-144 currently are signed on to the system and thus available to receive instant messages. The Buddy List is updated based on information received from a server to add or delete names of buddies as they sign on and off, respectively. Such Buddy List updates can be accompanied by various audible and visual indications to help notify the user that a buddy has signed on or off.
Users may send instant messages to, and exchange comments with, more than one other user at a time. Conventional instant message client software typically creates a separate instant message window for each user that is sent an instant message. For example, as shown in FIG. 5, if a user sends three instant messages to three other users, one to each of the users, three separate instant message windows 130a, 130b, and 130c are created. To change from one instant message window to another, the user typically must move and/or press a button on the mouse, or press a sequence of keys on the keyboard, to activate the desired instant message window.
The present inventors recognized that some users may find it undesirable to have to switch between instant message windows in order to send instant messages to and exchange comments with more than one other user at a time. Therefore, the present inventors recognized that it would be desirable to provide users with a user interface through which a user can send messages to and exchange comments with one or more users without having to switch among several different windows.
Implementations may include one or more of the following features. In one aspect, a computer-implemented method of addressing a message to a member of a plurality of potential message recipients may include maintaining a subset of a plurality of potential message recipients. Each potential message recipient may have an associated address, and the subset may be determined using a predetermined criterion. The method also may include auto-completing a partially entered address based on the subset of potential message recipients.
In another aspect, a method of addressing electronic messages to users of a computer network may include providing a set of user-selectable signals that modify auto-completion behavior and auto-completing a partially entered address for a message based on entry of one or more of the set of signals.
In another aspect, a method of exchanging instant messages among users of a computer network may include providing an instance of a user interface having an element for receiving addresses of instant message recipients. The method also may include allowing a user to send independent instant messages to different recipients by specifying an intended recipient""s address in the instance of the user interface element.
In another aspect, an instant messaging user interface may include a user interface element having an input element for receiving instant messages for more than one separate instant message exchange and an output element for displaying instant messages for more than one separate instant message exchange.
In another aspect, an instant messaging system may include an instant message server and a plurality of clients connected to the instant message server via a network. Each client may have software embodied in a computer-readable medium including instructions for causing the client to provide a user interface having an element for receiving addresses. The software also includes instructions for causing the client to allow a user to address instant messages to a first recipient via the user interface element while participating in a first instant message exchange and to allow the user to address instant messages to another recipient via the user interface element while participating in another instant message exchange separate from the first instant message exchange.
In another aspect, a protocol for addressing a message to a member of a plurality of potential message recipients may include one or more user-selectable signals for modifying auto-completion behavior, and a predetermined criterion for selecting a subset of the plurality of potential message recipients. Each potential message recipient may have an associated address.
One or more of the following advantages may be realized. The user interface allows a user to send instant messages to and exchange comments with a plurality of other users without having to switch among several instant message windows and without having to clutter up the user""s display screen with several instant message windows. Moreover, automatically completing the address of a message based on a partially entered address allows a user to address the message without having to enter a complete address, thereby saving time and effort. For example, the user interface can be configured to allow the user to address a message to the person with whom the user last corresponded using a single keystroke. Also, by using only a subset of the entire group of potential message recipients (e.g., each member of the subset being selected based on predetermined criteria such as the potential recipient being on a buddy list and currently being online), the address auto-completion feature can function properly with less input from the user (e.g., with fewer keystrokes) than would be required if the entire group of potential message recipients was used.
Further advantages and features will be apparent from the following description, including the drawings and the claims.